/* -*- c -*- */
enum virNetMessageType {
        VIR_NET_CALL = 0,
        VIR_NET_REPLY = 1,
        VIR_NET_MESSAGE = 2,
        VIR_NET_STREAM = 3,
        VIR_NET_CALL_WITH_FDS = 4,
        VIR_NET_REPLY_WITH_FDS = 5,
        VIR_NET_STREAM_HOLE = 6,
};
enum virNetMessageStatus {
        VIR_NET_OK = 0,
        VIR_NET_ERROR = 1,
        VIR_NET_CONTINUE = 2,
};
struct virNetMessageHeader {
        u_int                      prog;
        u_int                      vers;
        int                        proc;
        virNetMessageType          type;
        u_int                      serial;
        virNetMessageStatus        status;
};
struct virNetMessageNonnullDomain {
        virNetMessageNonnullString name;
        virNetMessageUUID          uuid;
        int                        id;
};
struct virNetMessageNonnullNetwork {
        virNetMessageNonnullString name;
        virNetMessageUUID          uuid;
};
struct virNetMessageError {
        int                        code;
        int                        domain;
        virNetMessageString        message;
        int                        level;
        virNetMessageDomain        dom;
        virNetMessageString        str1;
        virNetMessageString        str2;
        virNetMessageString        str3;
        int                        int1;
        int                        int2;
        virNetMessageNetwork       net;
};
struct virNetStreamHole {
        int64_t                    length;
        u_int                      flags;
};
